<?php

if(isset ($_GET['acao'])){
    
    $acao = $_GET['acao'];
    
    switch ($acao) {
        
        case 'cadastrar':
            $produtorController = new ProdutorController();
            $produtorController->cadastrarProdutor();
            break;
        
        case 'selecionar':
            $usuarioController = new UsuarioController();
            $usuarioController->selecionarUsuario($_GET['id']);
            break;
        
        case 'editar':
            $produtorController = new ProdutorController();
            $produtorController->editarProdutor($_GET['id']);
            break;
        
        case 'excluir':
            $produtorController = new ProdutorController();
            $produtorController->excluirProdutor($_GET['id']);
            break;

        default:
            break;
    }
    
}

Class ProdutorController{
    
    public function pesquisarProdutor($tipo_pesquisa, $pesquisa_produtor) {
        //Importa arquivos
        //include '../../conexao/conexao.php';
        include '../model/Bean/Produtor.Class';
        include '../model/DAO/ProdutorDAO.php';
        
        $produtorDAO = new ProdutorDAO();
        $produtor = $produtorDAO->pesquisarProdutor($tipo_pesquisa, $pesquisa_produtor);
        return $produtor;        
    }
    
    public function listarProdutores() {
        //Importa arquivos
        //include '../../conexao/conexao.php';
        
        $produtorDAO = new ProdutorDAO();
        $produtor = $produtorDAO->listarProdutores();
        return $produtor;        
    }
    
    public function selecionarProdutor($idProdutor) {
        //Importa arquivos
        //include '../../conexao/conexao.php';
        
        $produtorDAO = new ProdutorDAO();
        $produtor = $produtorDAO->selecionarProdutor($idProdutor);     
        
        return $produtor;        
        
    }
    
    public function cadastrarProdutor() {
        
        //Importa arquivos
        include '../../conexao/conexao.php';
        include '../model/DAO/ProdutorDAO.php';
        include '../model/Bean/Produtor.Class';
        include '../model/Bean/Usuario.Class';
        include '../model/DAO/UsuarioDAO.php';
        
        //Recebe os valores do formulário
        $produtor = new Produtor();
        $produtor->setEmail(utf8_decode($_POST['email']));
        $produtor->setNome(utf8_decode($_POST['nome']));
        $produtor->setCpf($_POST['cpf']);
        $produtor->setBanco(utf8_decode($_POST['banco']));
        $produtor->setAgencia($_POST['agencia']);
        $produtor->setConta($_POST['conta']);
        $produtor->setContatoPessoal($_POST['telefonePessoal']);
        $produtor->setContatoProfissional($_POST['telefoneProfissional']);
        $produtor->setLogin($_POST['login']);
        $produtor->setSenha($_POST['login']);
        $produtor->setTipo("PRODUTOR");
        
        $usuario = new Usuario();
        $usuario->setLogin($_POST['login']);
        $usuarioDAO = new UsuarioDAO();
        
        //Validar Login
        $validarLogin = $usuarioDAO->validarLogin($usuario);
        
        if($validarLogin == TRUE){            
            
            $email = $produtor->getEmail(utf8_decode($_POST['email']));
            $nome = $produtor->getNome(utf8_decode($_POST['nome']));
            $cpf = $produtor->getCpf($_POST['cpf']);
            $banco = $produtor->getBanco(utf8_decode($_POST['banco']));
            $agencia = $produtor->getAgencia($_POST['agencia']);
            $conta = $produtor->getConta($_POST['conta']);
            $contatoPessoal = $produtor->getContatoPessoal($_POST['telefonePessoal']);
            $contatoProfissional = $produtor->getContatoProfissional($_POST['telefoneProfissional']);
            header("Location: ../view/produtorCadastro.php?mensagem=login&email=$email&nome=$nome&cpf=$cpf&banco=$banco&agencia=$agencia&conta=$conta&contatopessoal=$contatoPessoal&contatoprofissional=$contatoProfissional");
            
        }else{
            
            //Efetua o cadastro
            $produtorDAO = new ProdutorDAO();
            $cadastro = $produtorDAO->cadastrarProdutor($produtor);

            if($cadastro){
                header("Location: ../view/produtores.php");
            }else{
                header("Location: ../view/produtorCadastro.php");
            }
            
        }        
        
    }
    
    public function editarProdutor($idProdutor) {
        
        //Importa arquivos
        include '../../conexao/conexao.php';
        include '../model/DAO/ProdutorDAO.php';
        include '../model/Bean/Produtor.Class';
        
        //Recebe os valores do formulário
        $produtor = new Produtor();
        $produtor->setEmail(utf8_decode($_POST['email']));
        $produtor->setNome(utf8_decode($_POST['nome']));
        $produtor->setCpf($_POST['cpf']);
        $produtor->setBanco(utf8_decode($_POST['banco']));
        $produtor->setAgencia($_POST['agencia']);
        $produtor->setConta($_POST['conta']);
        $produtor->setContatoPessoal($_POST['telefonePessoal']);
        $produtor->setContatoProfissional($_POST['telefoneProfissional']);
        $produtor->setSenha($_POST['senha']);
        $produtor->setStatus($_POST['status']);
        
        //Efetua o atualização
        $produtorDAO = new ProdutorDAO();
        $atualizar = $produtorDAO->editarProdutor($idProdutor, $produtor);
        
        //Envia o usuário para a tela seguradora
        header("Location: ../view/produtores.php");
        
    }
    
    public function excluirProdutor($idProdutor) {
        
        //Importa arquivos
        include '../../conexao/conexao.php';
        include '../model/DAO/ProdutorDAO.php';
        include '../model/Bean/Produtor.Class';
        
        //deleta a seguradora
        $produtorDAO = new ProdutorDAO();
        $excluir = $produtorDAO->excluirProdutor($idProdutor);
        
        //Envia o usuário para a tela seguradora
        header("Location: ../view/produtores.php");
        
    }
    
}

?>
